Virtualization essentially transforms hardware into software by creating multiple virtual machines on one physical computer. The virtual machines thus share hardware resources without interfering with each other, enabling multiple operating systems and applications to execute at the same time on a single computer, for example, by using a virtual machine hypervisor to allocate hardware resources dynamically and transparently so that multiple operating systems can run concurrently on a single physical computer. In essence, a virtual machine is thus a tightly isolated software container that can run its own operating systems and applications as if it were a physical computer. A virtual machine behaves like a physical computer and contains its own virtual (i.e., software-based) CPU, RAM hard disk and network interface card (NIC). In this way, utilization of costly hardware resources is maximized.
Because multiple virtual machines (VM) may reside on a single computer, management points multiply, complicating VM management particularly with respect to network access control.